package com.cDesarrollador.dao;

import java.util.List;

import org.hibernate.SessionFactory;

import com.cDesarrollador.model.Computador;

public class ComputadorDAO  implements IComputadorDAO{
	
	 private SessionFactory sessionFactory;
	 
	    /**
	     * Get Hibernate Session Factory
	     *
	     * @return SessionFactory - Hibernate Session Factory
	     */
	    public SessionFactory getSessionFactory() {
	        return sessionFactory;
	    }
	 
	    /**
	     * Set Hibernate Session Factory
	     *
	     * @param SessionFactory - Hibernate Session Factory
	     */
	    public void setSessionFactory(SessionFactory sessionFactory) {
	        this.sessionFactory = sessionFactory;
	    }
	 
	    /**
	     * Add Computador
	     *
	     * @param  Computador Computador
	     */
	   
	    public void addComputador(Computador Computador) {
	        getSessionFactory().getCurrentSession().save(Computador);
	    }
	 
	    /**
	     * Delete Computador
	     *
	     * @param  Computador Computador
	     */
	 
	    public void deleteComputador(Computador Computador) {
	        getSessionFactory().getCurrentSession().delete(Computador);
	    }
	 
	    /**
	     * Update Computador
	     *
	     * @param  Computador Computador
	     */
	   
	    public void updateComputador(Computador Computador) {
	        getSessionFactory().getCurrentSession().update(Computador);
	    }
	 
	    /**
	     * Get Computador
	     *
	     * @param  int Computador Id
	     * @return Computador
	     */
	   
	    public Computador getComputadorById(int id) {
	        List list = getSessionFactory().getCurrentSession()
	                                            .createQuery("from Computador where id=?")
	                                            .setParameter(0, id).list();
	        return (Computador)list.get(0);
	    }
	 
	    /**
	     * Get Computador List
	     *
	     * @return List - Computador list
	     */
	   
	    public List<Computador> getComputadors() {
	        List list = getSessionFactory().getCurrentSession().createQuery("from Computador").list();
	        return list;
	    }
	

}
